<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GtkToggleButton</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.76.1">
<link rel="home" href="index.html" title="GTK+ 2 Reference Manual">
<link rel="up" href="ButtonWidgets.html" title="Buttons and Toggles">
<link rel="prev" href="GtkRadioButton.html" title="GtkRadioButton">
<link rel="next" href="GtkLinkButton.html" title="GtkLinkButton">
<meta name="generator" content="GTK-Doc V1.18 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
<tr valign="middle">
<td><a accesskey="p" href="GtkRadioButton.html"><img src="left.png" width="24" height="24" border="0" alt="Prev"></a></td>
<td><a accesskey="u" href="ButtonWidgets.html"><img src="up.png" width="24" height="24" border="0" alt="Up"></a></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="24" height="24" border="0" alt="Home"></a></td>
<th width="100%" align="center">GTK+ 2 Reference Manual</th>
<td><a accesskey="n" href="GtkLinkButton.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
</tr>
<tr><td colspan="5" class="shortcuts">
<a href="#GtkToggleButton.synopsis" class="shortcut">Top</a>
                   | 
                  <a href="#GtkToggleButton.description" class="shortcut">Description</a>
                   | 
                  <a href="#GtkToggleButton.object-hierarchy" class="shortcut">Object Hierarchy</a>
                   | 
                  <a href="#GtkToggleButton.implemented-interfaces" class="shortcut">Implemented Interfaces</a>
                   | 
                  <a href="#GtkToggleButton.properties" class="shortcut">Properties</a>
                   | 
                  <a href="#GtkToggleButton.signals" class="shortcut">Signals</a>
</td></tr>
</table>
<div class="refentry">
<a name="GtkToggleButton"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GtkToggleButton.top_of_page"></a>GtkToggleButton</span></h2>
<p>GtkToggleButton — Create buttons which retain their state</p>
</td>
<td valign="top" align="right"><img src="toggle-button.png"></td>
</tr></table></div>
<div class="refsynopsisdiv">
<a name="GtkToggleButton.synopsis"></a><h2>Synopsis</h2>
<pre class="synopsis">
#include &lt;gtk/gtk.h&gt;

struct              <a class="link" href="GtkToggleButton.html#GtkToggleButton-struct" title="struct GtkToggleButton">GtkToggleButton</a>;
<a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *         <a class="link" href="GtkToggleButton.html#gtk-toggle-button-new" title="gtk_toggle_button_new ()">gtk_toggle_button_new</a>               (<em class="parameter"><code><span class="type">void</span></code></em>);
<a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *         <a class="link" href="GtkToggleButton.html#gtk-toggle-button-new-with-label" title="gtk_toggle_button_new_with_label ()">gtk_toggle_button_new_with_label</a>    (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *label</code></em>);
<a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *         <a class="link" href="GtkToggleButton.html#gtk-toggle-button-new-with-mnemonic" title="gtk_toggle_button_new_with_mnemonic ()">gtk_toggle_button_new_with_mnemonic</a> (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *label</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-mode" title="gtk_toggle_button_set_mode ()">gtk_toggle_button_set_mode</a>          (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> draw_indicator</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkToggleButton.html#gtk-toggle-button-get-mode" title="gtk_toggle_button_get_mode ()">gtk_toggle_button_get_mode</a>          (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);
#define             <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-state" title="gtk_toggle_button_set_state">gtk_toggle_button_set_state</a>
<span class="returnvalue">void</span>                <a class="link" href="GtkToggleButton.html#gtk-toggle-button-toggled" title="gtk_toggle_button_toggled ()">gtk_toggle_button_toggled</a>           (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkToggleButton.html#gtk-toggle-button-get-active" title="gtk_toggle_button_get_active ()">gtk_toggle_button_get_active</a>        (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-active" title="gtk_toggle_button_set_active ()">gtk_toggle_button_set_active</a>        (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_active</code></em>);
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            <a class="link" href="GtkToggleButton.html#gtk-toggle-button-get-inconsistent" title="gtk_toggle_button_get_inconsistent ()">gtk_toggle_button_get_inconsistent</a>  (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);
<span class="returnvalue">void</span>                <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-inconsistent" title="gtk_toggle_button_set_inconsistent ()">gtk_toggle_button_set_inconsistent</a>  (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);
</pre>
</div>
<div class="refsect1">
<a name="GtkToggleButton.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="synopsis">
  <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject">GObject</a>
   +----<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GInitiallyUnowned">GInitiallyUnowned</a>
         +----<a class="link" href="GtkObject.html" title="GtkObject">GtkObject</a>
               +----<a class="link" href="GtkWidget.html" title="GtkWidget">GtkWidget</a>
                     +----<a class="link" href="GtkContainer.html" title="GtkContainer">GtkContainer</a>
                           +----<a class="link" href="GtkBin.html" title="GtkBin">GtkBin</a>
                                 +----<a class="link" href="GtkButton.html" title="GtkButton">GtkButton</a>
                                       +----GtkToggleButton
                                             +----<a class="link" href="GtkCheckButton.html" title="GtkCheckButton">GtkCheckButton</a>
</pre>
</div>
<div class="refsect1">
<a name="GtkToggleButton.implemented-interfaces"></a><h2>Implemented Interfaces</h2>
<p>
GtkToggleButton implements
 AtkImplementorIface,  <a class="link" href="GtkBuildable.html" title="GtkBuildable">GtkBuildable</a> and  <a class="link" href="GtkActivatable.html" title="GtkActivatable">GtkActivatable</a>.</p>
</div>
<div class="refsect1">
<a name="GtkToggleButton.properties"></a><h2>Properties</h2>
<pre class="synopsis">
  "<a class="link" href="GtkToggleButton.html#GtkToggleButton--active" title='The "active" property'>active</a>"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkToggleButton.html#GtkToggleButton--draw-indicator" title='The "draw-indicator" property'>draw-indicator</a>"           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
  "<a class="link" href="GtkToggleButton.html#GtkToggleButton--inconsistent" title='The "inconsistent" property'>inconsistent</a>"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write
</pre>
</div>
<div class="refsect1">
<a name="GtkToggleButton.signals"></a><h2>Signals</h2>
<pre class="synopsis">
  "<a class="link" href="GtkToggleButton.html#GtkToggleButton-toggled" title='The "toggled" signal'>toggled</a>"                                        : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a>
</pre>
</div>
<div class="refsect1">
<a name="GtkToggleButton.description"></a><h2>Description</h2>
<p>
A <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> is a <a class="link" href="GtkButton.html" title="GtkButton"><span class="type">GtkButton</span></a> which will remain 'pressed-in' when
clicked. Clicking again will cause the toggle button to return to its
normal state.
</p>
<p>
A toggle button is created by calling either <a class="link" href="GtkToggleButton.html#gtk-toggle-button-new" title="gtk_toggle_button_new ()"><code class="function">gtk_toggle_button_new()</code></a> or
<a class="link" href="GtkToggleButton.html#gtk-toggle-button-new-with-label" title="gtk_toggle_button_new_with_label ()"><code class="function">gtk_toggle_button_new_with_label()</code></a>. If using the former, it is advisable to
pack a widget, (such as a <a class="link" href="GtkLabel.html" title="GtkLabel"><span class="type">GtkLabel</span></a> and/or a <a class="link" href="GtkPixmap.html" title="GtkPixmap"><span class="type">GtkPixmap</span></a>), into the toggle
button's container. (See <a class="link" href="GtkButton.html" title="GtkButton"><span class="type">GtkButton</span></a> for more information).
</p>
<p>
The state of a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> can be set specifically using
<a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-active" title="gtk_toggle_button_set_active ()"><code class="function">gtk_toggle_button_set_active()</code></a>, and retrieved using
<a class="link" href="GtkToggleButton.html#gtk-toggle-button-get-active" title="gtk_toggle_button_get_active ()"><code class="function">gtk_toggle_button_get_active()</code></a>.
</p>
<p>
To simply switch the state of a toggle button, use gtk_toggle_button_toggled.
</p>
<div class="example">
<a name="id693638"></a><p class="title"><b>Example 16. Creating two <span class="structname">GtkToggleButton</span> widgets.</b></p>
<div class="example-contents">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="type">void</span><span class="normal"> </span><span class="function">make_toggles</span><span class="normal"> </span><span class="symbol">(</span><span class="type">void</span><span class="symbol">)</span><span class="normal"> </span><span class="cbracket">{</span>
<span class="normal">   </span><span class="usertype">GtkWidget</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">dialog</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">toggle1</span><span class="symbol">,</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">toggle2</span><span class="symbol">;</span>
<span class="normal">   dialog </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GtkDialog.html#gtk-dialog-new">gtk_dialog_new</a></span><span class="normal"> </span><span class="symbol">();</span>
<span class="normal">   toggle1 </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GtkToggleButton.html#gtk-toggle-button-new-with-label">gtk_toggle_button_new_with_label</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Hi, i'm a toggle button."</span><span class="symbol">);</span>
<span class="normal">   </span><span class="comment">/* Makes this toggle button invisible */</span>
<span class="normal">   </span><span class="function"><a href="GtkToggleButton.html#gtk-toggle-button-set-mode">gtk_toggle_button_set_mode</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_TOGGLE_BUTTON</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">toggle1</span><span class="symbol">),</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS">TRUE</a></span><span class="symbol">);</span>
<span class="normal">   </span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#g-signal-connect">g_signal_connect</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">toggle1</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"toggled"</span><span class="symbol">,</span>
<span class="normal">                     </span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#G-CALLBACK:CAPS">G_CALLBACK</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">output_state</span><span class="symbol">),</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
<span class="normal">   </span><span class="function"><a href="GtkBox.html#gtk-box-pack-start">gtk_box_pack_start</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_BOX</span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_DIALOG</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">dialog</span><span class="symbol">)-&gt;</span><span class="normal">action_area</span><span class="symbol">),</span>
<span class="normal">                       toggle1</span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">,</span><span class="normal"> </span><span class="number">2</span><span class="symbol">);</span>
<span class="normal">   toggle2 </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GtkToggleButton.html#gtk-toggle-button-new-with-label">gtk_toggle_button_new_with_label</a></span><span class="normal"> </span><span class="symbol">(</span><span class="string">"Hi, i'm another toggle button."</span><span class="symbol">);</span>
<span class="normal">   </span><span class="function"><a href="GtkToggleButton.html#gtk-toggle-button-set-mode">gtk_toggle_button_set_mode</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_TOGGLE_BUTTON</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">toggle2</span><span class="symbol">),</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">);</span>
<span class="normal">   </span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#g-signal-connect">g_signal_connect</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">toggle2</span><span class="symbol">,</span><span class="normal"> </span><span class="string">"toggled"</span><span class="symbol">,</span>
<span class="normal">                     </span><span class="function"><a href="http://library.gnome.org/devel/gobject/unstable/gobject-Closures.html#G-CALLBACK:CAPS">G_CALLBACK</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">output_state</span><span class="symbol">),</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS">NULL</a></span><span class="symbol">);</span>
<span class="normal">   </span><span class="function"><a href="GtkBox.html#gtk-box-pack-start">gtk_box_pack_start</a></span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_BOX</span><span class="normal"> </span><span class="symbol">(</span><span class="function">GTK_DIALOG</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">dialog</span><span class="symbol">)-&gt;</span><span class="normal">action_area</span><span class="symbol">),</span>
<span class="normal">                       toggle2</span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">,</span><span class="normal"> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS">FALSE</a></span><span class="symbol">,</span><span class="normal"> </span><span class="number">2</span><span class="symbol">);</span>
<span class="normal">   </span><span class="function"><a href="GtkWidget.html#gtk-widget-show-all">gtk_widget_show_all</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">dialog</span><span class="symbol">);</span>
<span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

</div>
<br class="example-break">
</div>
<div class="refsect1">
<a name="GtkToggleButton.details"></a><h2>Details</h2>
<div class="refsect2">
<a name="GtkToggleButton-struct"></a><h3>struct GtkToggleButton</h3>
<pre class="programlisting">struct GtkToggleButton;</pre>
<p>
The <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> struct contains private data only, and should be manipulated using the functions below.
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-new"></a><h3>gtk_toggle_button_new ()</h3>
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *         gtk_toggle_button_new               (<em class="parameter"><code><span class="type">void</span></code></em>);</pre>
<p>
Creates a new toggle button. A widget should be packed into the button, as in <a class="link" href="GtkButton.html#gtk-button-new" title="gtk_button_new ()"><code class="function">gtk_button_new()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new toggle button.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-new-with-label"></a><h3>gtk_toggle_button_new_with_label ()</h3>
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *         gtk_toggle_button_new_with_label    (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *label</code></em>);</pre>
<p>
Creates a new toggle button with a text label.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>label</code></em> :</span></p></td>
<td>a string containing the message to be placed in the toggle button.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new toggle button.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-new-with-mnemonic"></a><h3>gtk_toggle_button_new_with_mnemonic ()</h3>
<pre class="programlisting"><a class="link" href="GtkWidget.html" title="GtkWidget"><span class="returnvalue">GtkWidget</span></a> *         gtk_toggle_button_new_with_mnemonic (<em class="parameter"><code>const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *label</code></em>);</pre>
<p>
Creates a new <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> containing a label. The label
will be created using <a class="link" href="GtkLabel.html#gtk-label-new-with-mnemonic" title="gtk_label_new_with_mnemonic ()"><code class="function">gtk_label_new_with_mnemonic()</code></a>, so underscores
in <em class="parameter"><code>label</code></em> indicate the mnemonic for the button.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>label</code></em> :</span></p></td>
<td>the text of the button, with an underscore in front of the
mnemonic character</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a new <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>
</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-set-mode"></a><h3>gtk_toggle_button_set_mode ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_toggle_button_set_mode          (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> draw_indicator</code></em>);</pre>
<p>
Sets whether the button is displayed as a separate indicator and label.
You can call this function on a checkbutton or a radiobutton with
<em class="parameter"><code>draw_indicator</code></em> = <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> to make the button look like a normal button
</p>
<p>
This function only affects instances of classes like <a class="link" href="GtkCheckButton.html" title="GtkCheckButton"><span class="type">GtkCheckButton</span></a>
and <a class="link" href="GtkRadioButton.html" title="GtkRadioButton"><span class="type">GtkRadioButton</span></a> that derive from <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>,
not instances of <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> itself.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>draw_indicator</code></em> :</span></p></td>
<td>if <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>, draw the button as a separate indicator
and label; if <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>, draw the button like a normal button</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-get-mode"></a><h3>gtk_toggle_button_get_mode ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_toggle_button_get_mode          (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);</pre>
<p>
Retrieves whether the button is displayed as a separate indicator
and label. See <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-mode" title="gtk_toggle_button_set_mode ()"><code class="function">gtk_toggle_button_set_mode()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the togglebutton is drawn as a separate indicator
and label.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-set-state"></a><h3>gtk_toggle_button_set_state</h3>
<pre class="programlisting">#define gtk_toggle_button_set_state		gtk_toggle_button_set_active
</pre>
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
<h3 class="title">Warning</h3>
<p><code class="literal">gtk_toggle_button_set_state</code> is deprecated and should not be used in newly-written code. Use <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-active" title="gtk_toggle_button_set_active ()"><code class="function">gtk_toggle_button_set_active()</code></a> instead.</p>
</div>
<p>
This is a deprecated macro, and is only maintained for compatibility reasons.
</p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-toggled"></a><h3>gtk_toggle_button_toggled ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_toggle_button_toggled           (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);</pre>
<p>
Emits the <a class="link" href="GtkToggleButton.html#GtkToggleButton-toggled" title='The "toggled" signal'>toggled</a>
signal on the <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>. There is no good reason for an
application ever to call this function.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody><tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>.</td>
</tr></tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-get-active"></a><h3>gtk_toggle_button_get_active ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_toggle_button_get_active        (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);</pre>
<p>
Queries a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> and returns its current state. Returns <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if
the toggle button is pressed in and <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> if it is raised.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>a <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> value.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-set-active"></a><h3>gtk_toggle_button_set_active ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_toggle_button_set_active        (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> is_active</code></em>);</pre>
<p>
Sets the status of the toggle button. Set to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if you want the
GtkToggleButton to be 'pressed in', and <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> to raise it.
This action causes the toggled signal to be emitted.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>is_active</code></em> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a>.</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-get-inconsistent"></a><h3>gtk_toggle_button_get_inconsistent ()</h3>
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>            gtk_toggle_button_get_inconsistent  (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>);</pre>
<p>
Gets the value set by <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-inconsistent" title="gtk_toggle_button_set_inconsistent ()"><code class="function">gtk_toggle_button_set_inconsistent()</code></a>.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the button is displayed as inconsistent, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> otherwise</td>
</tr>
</tbody>
</table></div>
</div>
<hr>
<div class="refsect2">
<a name="gtk-toggle-button-set-inconsistent"></a><h3>gtk_toggle_button_set_inconsistent ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                gtk_toggle_button_set_inconsistent  (<em class="parameter"><code><a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *toggle_button</code></em>,
                                                         <em class="parameter"><code><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a> setting</code></em>);</pre>
<p>
If the user has selected a range of elements (such as some text or
spreadsheet cells) that are affected by a toggle button, and the
current values in that range are inconsistent, you may want to
display the toggle in an "in between" state. This function turns on
"in between" display.  Normally you would turn off the inconsistent
state again if the user toggles the toggle button. This has to be
done manually, <a class="link" href="GtkToggleButton.html#gtk-toggle-button-set-inconsistent" title="gtk_toggle_button_set_inconsistent ()"><code class="function">gtk_toggle_button_set_inconsistent()</code></a> only affects
visual appearance, it doesn't affect the semantics of the button.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>toggle_button</code></em> :</span></p></td>
<td>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>
</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>setting</code></em> :</span></p></td>
<td>
<a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if state is inconsistent</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="GtkToggleButton.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkToggleButton--active"></a><h3>The <code class="literal">"active"</code> property</h3>
<pre class="programlisting">  "active"                   <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>If the toggle button should be pressed in or not.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkToggleButton--draw-indicator"></a><h3>The <code class="literal">"draw-indicator"</code> property</h3>
<pre class="programlisting">  "draw-indicator"           <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>If the toggle part of the button is displayed.</p>
<p>Default value: FALSE</p>
</div>
<hr>
<div class="refsect2">
<a name="GtkToggleButton--inconsistent"></a><h3>The <code class="literal">"inconsistent"</code> property</h3>
<pre class="programlisting">  "inconsistent"             <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a>              : Read / Write</pre>
<p>If the toggle button is in an "in between" state.</p>
<p>Default value: FALSE</p>
</div>
</div>
<div class="refsect1">
<a name="GtkToggleButton.signal-details"></a><h2>Signal Details</h2>
<div class="refsect2">
<a name="GtkToggleButton-toggled"></a><h3>The <code class="literal">"toggled"</code> signal</h3>
<pre class="programlisting"><span class="returnvalue">void</span>                user_function                      (<a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a> *togglebutton,
                                                        <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a>         user_data)         : <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Signals.html#G-SIGNAL-RUN-FIRST:CAPS"><code class="literal">Run First</code></a></pre>
<p>
Should be connected if you wish to perform an action whenever the
<a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>'s state is changed.
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><em class="parameter"><code>togglebutton</code></em> :</span></p></td>
<td>the object which received the signal.</td>
</tr>
<tr>
<td><p><span class="term"><em class="parameter"><code>user_data</code></em> :</span></p></td>
<td>user data set when the signal handler was connected.</td>
</tr>
</tbody>
</table></div>
</div>
</div>
<div class="refsect1">
<a name="GtkToggleButton.see-also"></a><h2>See Also</h2>
<p>
</p>
<div class="variablelist"><table border="0">
<col align="left" valign="top">
<tbody>
<tr>
<td><p><span class="term"><a class="link" href="GtkButton.html" title="GtkButton"><span class="type">GtkButton</span></a></span></p></td>
<td><p>a more general button.</p></td>
</tr>
<tr>
<td><p><span class="term"><a class="link" href="GtkCheckButton.html" title="GtkCheckButton"><span class="type">GtkCheckButton</span></a></span></p></td>
<td><p>another way of presenting a toggle option.</p></td>
</tr>
<tr>
<td><p><span class="term"><a class="link" href="gtk-gtkcheckmenuitem.html#GtkCheckMenuItem"><span class="type">GtkCheckMenuItem</span></a></span></p></td>
<td><p>a <a class="link" href="GtkToggleButton.html" title="GtkToggleButton"><span class="type">GtkToggleButton</span></a>  as a menu item.</p></td>
</tr>
</tbody>
</table></div>
<p>
</p>
</div>
</div>
<div class="footer">
<hr>
          Generated by GTK-Doc V1.18</div>
</body>
</html>